﻿using System;
using System.Collections.Generic;
using System.Linq;
using InvestmentIntelligence.DbModel.Models;

namespace InvestmentIntelligence.Data.Repository
{
    public interface IFxSerieUpdatableRepository : ISeriesRepository, IFxSerieRepository
    {
        void Merge(IEnumerable<FxSerie> list);
    }

    public interface IFxSerieRepository 
    {
        List<T> GetList<T>(Func<IQueryable<FxSerie>, IEnumerable<T>> f, int currencyId);
       
        List<T> GetList<T>(Func<IQueryable<FxSerie>, IEnumerable<T>> f);

        List<FxSerie> GetList();

        FxSerie Get(int currencyId, DateTime date);

        decimal? GetLast(int currencyId);
    }
}